package org.jeecg.modules.online.desform.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;

/**
 * @Description: 表单设计器字段权限表
 * @Author: jeecg-boot
 * @Date: 2019-09-03
 * @Version: V1.0
 */
@Data
@TableName("design_form_auth")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "design_form_auth对象", description = "表单设计器字段权限表")
public class DesignFormAuth {

    /**
     * 主键ID
     */
    @TableId(type = IdType.ID_WORKER_STR)
    @ApiModelProperty(value = "主键ID")
    private java.lang.String id;
    /**
     * 表单设计ID
     */
    @Excel(name = "表单设计ID", width = 15)
    @ApiModelProperty(value = "表单设计ID")
    private java.lang.String desformId;
    /**
     * 表单设计编码
     */
    @Excel(name = "表单设计编码", width = 15)
    @ApiModelProperty(value = "表单设计编码")
    private java.lang.String desformCode;
    /**
     * 权限类型（data、button、field）
     */
    @Excel(name = "权限类型", width = 20)
    @ApiModelProperty(value = "权限类型")
    private java.lang.String permissionType;
    /**
     * 组件id json中的key
     */
    @Excel(name = "组件id json中的key", width = 15)
    @ApiModelProperty(value = "组件id json中的key")
    private java.lang.String authComKey;
    /**
     * 权限名称
     */
    @Excel(name = "权限名称", width = 15)
    @ApiModelProperty(value = "权限名称")
    private java.lang.String authTitle;
    /**
     * 权限字段
     */
    @Excel(name = "权限字段", width = 15)
    @ApiModelProperty(value = "权限字段")
    private java.lang.String authField;
    /**
     * 授权类型（字段权限时存储可见1或可编辑2；数据权限存储查询类型（大于、小于等）；按钮权限此项为空）
     */
    @Excel(name = "授权类型", width = 15)
    @ApiModelProperty(value = "授权类型")
    private java.lang.String authType;
    /**
     * 规则值
     */
    @Excel(name = "授权规则值", width = 15)
    @ApiModelProperty(value = "授权规则值")
    private java.lang.String authValue;
    /**
     * 授权范围【Y 所有人 ,N 不是所有人】默认所有人
     */
    @Excel(name = "授权范围【Y 所有人 ,N 不是所有人】默认所有人", width = 15)
    @ApiModelProperty(value = "授权范围【Y 所有人 ,N 不是所有人】默认所有人")
    private java.lang.String authScopeIsAll;
    /**
     * 授权范围值，保存user登录账户
     */
    @Excel(name = "授权范围值，保存user登录账户", width = 15)
    @ApiModelProperty(value = "授权范围值，保存user登录账户")
    private java.lang.String authScopeUsersVal;
    /**
     * 授权范围值，保存授权角色编码
     */
    @Excel(name = "授权范围值，保存授权角色编码", width = 15)
    @ApiModelProperty(value = "授权范围值，保存授权角色编码")
    private java.lang.String authScopeRolesVal;
    /**
     * 授权范围值，保存部门编码
     */
    @Excel(name = "授权范围值，保存部门编码", width = 15)
    @ApiModelProperty(value = "授权范围值，保存部门编码")
    private java.lang.String authScopeDepartsVal;
    /**
     * 是否是子表内权限
     */
    @Excel(name = "是否是子表内权限", width = 15)
    @ApiModelProperty(value = "是否是子表内权限")
    private java.lang.Boolean subTable;
    /**
     * 子表的标题
     */
    @Excel(name = "子表的标题", width = 15)
    @ApiModelProperty(value = "子表的标题")
    private java.lang.String subTitle;
    /**
     * 子表的Key
     */
    @Excel(name = "子表的Key", width = 15)
    @ApiModelProperty(value = "子表的Key")
    private java.lang.String subKey;
    /**
     * 状态（0=无效，1=有效）
     */
    @Excel(name = "状态", width = 15)
    @ApiModelProperty(value = "状态")
    private java.lang.Integer status;
    /**
     * 创建人
     */
    @Excel(name = "创建人", width = 15)
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
    /**
     * 创建时间
     */
    @Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
    /**
     * 修改人
     */
    @Excel(name = "修改人", width = 15)
    @ApiModelProperty(value = "修改人")
    private java.lang.String updateBy;
    /**
     * 修改时间
     */
    @Excel(name = "修改时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
    private java.util.Date updateTime;

}
